package com.tanhua.model.vo;

import com.tanhua.model.db.UserInfo;
import com.tanhua.model.mongo.Voice;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class VoiceVo implements Serializable {


    private Long id;
    private String avatar; //头像
    private String nickname; //昵称
    private String gender;  // 性别
    private Integer age; //年龄

    private String soundUrl; //语音地址
    private Integer remainingTimes; //剩余次数



    public static VoiceVo init(UserInfo userInfo, Voice voice) {
        VoiceVo vo = new VoiceVo();
        //copy用户属性
        BeanUtils.copyProperties(userInfo, vo);
        //copy语音属性
        vo.setSoundUrl(voice.getSoundUrl());
        vo.setId(voice.getUserId());
        return vo;
    }
}